Teleport preview provisioning in virtual environments

ABSTRACT

Upon a request for a teleportation operation, a user of a virtual universe is provided with an interface for specification of image resolution parameters for initial rendering of a teleportation destination and the user&#39;s avatar which are degraded from a full resolution rendering of the teleportation destination and avatar. Degradation of resolution can be in regard to any of a plurality of image qualities such as spatial resolution, temporal resolution colors or color depth, light modeling and rendering style or the like or combinations thereof. Alternatively, a degraded copy of the teleportation destination can be provided as an alternative initial teleportation destination image. Since a rendering of a degraded image can be done with reduced response time, the user is thus provided with full control over a trade-off between image quality and response time and teleportation operations are thus encouraged.

FIELD OF THE INVENTION

The present invention generally relates to the production and managementof interactive virtual universes presented to users on computers linkedby a network and, more particularly, to providing previews ofteleportation destinations and reduction of the processing burdenassociated with teleportation.

BACKGROUND OF THE INVENTION

Closely following the introduction of computer generated graphicrepresentations of objects, computers games have been developed and havebecome popular to the point of becoming a significant industry. Asignificant factor in the continuing popularity of such games maypossibly be the fact that the simulated venue or environment in whichthe game is played is limited only by the imagination of the gamedeveloper and can be presented to a viewer on a display with a realisticappearance which is limited only by the hardware and software employedto render associated images. Moreover, such simulated environments maybe changed at will and very rapidly with rules of the game often beingaltered with the simulated environment. Connection of computers throughnetworks such as the Internet have also allowed interactiveparticipation in the same game simultaneously or at will by numerousparticipants.

As a synthesis of such games with other capabilities of the Internetsuch as interactive chat rooms, advertising and marketing and access tomassive amounts of information and the like, so-called virtual universes(sometimes referred to as “metaverses” or “3D Internet”) have beendeveloped and made available to the public in recent years. A virtualuniverse (VU) is a computer-based simulated environment intended forusers thereof (referred to as “residents” or “agents”) to inhabit,traverse and interact through the use of avatars. An avatar, in thecontext of a VU, is a graphical representation of a user which has anappearance that is freely selectable that the user can control and otherparticipants can sec, often taking the form of a cartoon-like humanwhich can move through the regions of the virtual universe representedby 3D graphics and landscapes. Such 3D graphics and virtual landscapesmay or may not resemble the real world in terms of physical laws,building environments, geography and landscapes. Some examples ofvirtual universes available to the public include Second Life® (“SecondLife” is a trademark of Linden Research, Inc. in the United Statesand/or other countries), Entropia Universe™ (“Entropia Universe” is atrademark of Mindark PE AB in Sweden and/or other countries), and There®(“There” is a trademark of Forterra Systems, Inc. in the United Statesand/or other countries). Examples of massively multiplayer online gamesinclude EverQuest® (“EverQuest” is a trademark of Sony OnlineEntertainment, LLC in the United States and/or other countries), UltimaOnline® (“Ultima Online” is a trademark of Electronic Arts, Inc. in theUnited States and/or other countries) or World of Warcraft World ofWarcraft® (“World of Warcraft” is a trademark of Blizzard Entertainment,Inc. in the United States and/or other countries). Publically availablevirtual universes and/or massively multiplayer online games are operatedby persons or companies who provide servers to generate portions of theVU and which may impose a charge for participation as a resident, toestablish a particular object or environment (sometimes referred to asan “island”) within the VU, present advertising and the like orcombinations thereof. In short, an avatar controlled by a resident caninteract with other avatars, objects and portions of the immediateenvironment of the avatar in much the same way a person would interactwith other persons, objects and portions of the environment in the realworld but where transportation between portions of the VU may be nearlyinstantaneous (e.g. referred to as “teleporting”) and objects and localenvironments within the VU may be entirely developed at will to resemblethe real world closely, not at all or with any degree of realism orfantasy in between which may be provided by the administrator of the VUor users of the VU, often for a not insubstantial fee. Further, oncesuch objects or local environments become part of a VU, fees can becharged for use made of them through avatars. On the other hand, manyentities have found it advantageous to provide environments closelyresembling real world facilities or locales to allow users toexperience, though avatars and with a significant degree of realism,particular locales in the real world and a sampling of the likelyinhabitants thereof.

While teleporting may ideally provide a nearly instantaneous relocationof an avatar over potentially great distances within the geography of aVU or between virtual universes, in practice, substantial delays areoften encountered in doing so. Teleportation of an avatar involves notonly rendering of the avatar in a new environment but also transfer ofsignificant amounts of data between processors of a network while bothprocesses are very computationally intensive and may involvecommunication of large amounts of data.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide a methodand apparatus, preferably embodied in software to reduce thecomputational and communications burden of teleportation.

In order to accomplish these and other objects of the invention, amethod is provided for improving response time of a teleportationoperation in a virtual universe system comprising steps of storing imageresolution parameters at a client processor corresponding to an avatarof the virtual universe, in response to a teleport operation request toa teleportation destination, confirming that the image resolutionparameters are acceptable to a user for rendering an image of the avatarand teleportation destination or changing the image resolutionparameters, and rendering an image of the avatar and teleportationdestination in the course of the requested teleportation operation inaccordance with resolution parameters determined in the confirming step.

In accordance with another aspect of the invention, a virtual universesystem is provided including a client configuration panel for storingimage resolution parameters at a client processor corresponding to anavatar, a teleport request control for generating an interface inresponse to a teleport operation request to a teleportation destinationand prompting a user to confirm that the image resolution parameters areacceptable for rendering an image of the avatar and teleportationdestination or changing the image resolution parameters, and anarrangement for rendering an image of the avatar and teleportationdestination in the course of the requested teleportation operation inaccordance with resolution parameters determined using the interface.

In accordance with a further aspect of the invention, a method ofoperating a virtual universe system is provided in which teleportationis encouraged comprising steps of providing an interface for a user tospecify image resolution parameters which are degraded from fullresolution of a teleportation destination but acceptable to the user forinitial rendering of an image of a teleportation destination and anavatar, and providing an image of the teleportation destination andavatar which is rendered in accordance with said degraded imageparameters or an image of a degraded copy of said teleportationdestination.

In accordance with yet another aspect of the invention, a computerprogram product is provided comprising a machine readable medium orcommunication link, said machine readable medium or communication linkcontaining signals comprising a program which, when run on a processor,causes said processor to perform steps of: prompting a user to storeimage resolution parameters at a client processor corresponding to anavatar of said virtual universe; in response to a teleport operationrequest to a teleportation destination for said avatar, confirming thatsaid image resolution parameters are acceptable to a user for renderingan image of said avatar and said teleportation destination or changingsaid image resolution parameters; and rendering an image of said avatarand said teleportation destination in the course of said teleportationoperation in accordance with resolution parameters determined in saidconfirming step.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects and advantages will be betterunderstood from the following detailed description of a preferredembodiment of the invention with reference to the drawings, in which:

FIG. 1 is a high-level block diagram or data flow diagram of anetwork-based virtual universe,

FIG. 2 is a similarly high-level block diagram of some details of theclient 120 and server 110 generally provided for participation in avirtual universe,

FIG. 3 is a high-level block diagram of an architecture suitable forreducing the computational and communications burden of teleportation toan arbitrary degree,

FIG. 4 is an exemplary dialog box or menu usable in connection with apreferred embodiment of the present invention, and

FIG. 5 illustrates a suitable processor architecture for use as a serveror client in FIG. 1.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

Referring now to the drawings, and more particularly to FIG. 1, there isshown a high-level diagram of a network implementing a virtual universe(VU). FIG. 2 is a similarly high-level block diagram illustratingfunctional relationships between a client terminal and a serverimplementing a VU and between which network 105 may or may not beinterposed. FIGS. 1-2 are principally arranged to facilitate anunderstanding of the overall general operation of a virtual universe anddo not and are not intended to represent any particular knownimplementation of a VU. Further, at the level of abstraction with whicha VU is represented in FIG. 1, the VU illustrated may or may not includethe invention and no portion of FIG. 1 or 2 is admitted to be prior artin regard to the invention. It should also be borne in mind that VUimplementations have become relatively sophisticated and the underlyingtechnology relatively mature such that enhancements thereto, such asthose provided by the present invention, must be interoperable withexisting network and VU infrastructure.

It should also be recognized that operation of a VU is extremelyprocessing intensive and, while large amounts of computing resources maybe accessible through a network, graphics generation and rendering mustbe distributed and managed in such a way as to provide images ofportions of the VU in a very short period of time in order to beacceptable to residents of the VU, particularly in regard to updatingviews as avatars are manipulated and as teleportation between islands ofthe VU occur. Further, substantial portions of the control of avatarsmust be automated in order to keep the manipulation effort required of aresident within reasonable bounds while providing meaningful andreasonably logical and realistic interactions with environments, objectsand other avatars. Thus, to reduce the number of avatar controlparameters which must be controlled by a user to a practical level, eachenvironment/island, object and avatar must be personalized (e.g. have anidentity including ownership, personality, behaviors, and the like) aswell as many properties and attributes (e.g. behaviors, properties anddefaults) which must be transmitted efficiently, generally as metadata,between potentially a large number of processors which perform therendering thereof and the rendering distributed in some form (e.g.compressed video) to the terminals through which residents interact withthe VU.

More specifically, as illustrated in FIG. 1, the overall network andsystem 100 will be recognized as substantially the same as that of theInternet. Other functional elements such as firewalls, proxies and thelike may be included for purposes of security, reliability and the likebut are not important to the successful practice of the invention.Network 105, such as the Internet, provides communications between allVU servers 110 a-110 d and at least one virtual universe server 115which establishes the basic VU topology, characteristics, rules and thelike and maintains membership and billing information in regard toresidents (users). Clients 120 a-120 d are essentially user terminalsand may communicate with the network 105 and VU server 115 eitherdirectly or through a VU server although that distinction is unimportantto the practice of the invention, as well. A suitable processorarchitecture is illustrated in FIG. 5 and discussed below.

Referring now also to FIG. 2 the nature of communications generallydepicted in FIG. 1 will be explained in greater detail but also with adegree of generality since many variations thereof may be employed. Itwill be readily understood by those skilled in the art that rendering ofislands, avatars, objects and the like is perhaps the most processingintensive aspect of a virtual universe as well as being the mosttime-critical for performance which is acceptable to the user. Hardware,software and firmware for performing rendering is generally resident ineach VU server 110 and the virtual universe server 115 of FIG. 1 but maybe present to some degree (e.g. a graphics co-processor) at a clientterminal 120 as depicted by dashed line 210 and parentheses in FIG. 2.In general, the servers 110, 115 will have the capability of arbitratingthe most convenient available location for rendering to be done mostexpeditiously. For example, when rendering is required at, for example,client 120 a for interaction of a particular avatar with an object whilechanging location on an island, the rendering (including occlusion orhidden line processing) could be performed at the local server 110 b ordistributed over any or all of servers 110 a-110 d and possibly evenincluding some client terminals (e.g. 120 b) having rendering capability215′ depending on rendering complexity (e.g. required detail) andcurrent processing loads of VU servers and clients. It should beappreciated that plural avatars for plural residents/users may bepresent in the same environment and that a different point of view maybe required for the rendering presented to each resident/user.

Thus, the graphics to be presented to a user may be transmitted as arendering to the network or a local client from a server (e.g. ascompressed graphics which may or may not be further modified at a localserver or client processor) or, if rendering of avatars, objects orislands resident on a particular server are to be rendered on anotherprocessor, attributes such as the identity, physical laws, graphicsdefinitions (e.g. primitives), etc. of an island, the identity,properties, graphics definitions, etc. of an object and/or personality,ratings, graphics definitions, etc. of an avatar are stored, preferablyas metadata in servers 110 and transmitted as such to the processorwhich will actually perform the rendering and retransmission of thegraphics. It should be appreciated that such attributes will be eitherconstant or only infrequently or slowly changing and thus would beimpractical and distracting to specify with each avatar command but canbe automatically transmitted and retransmitted between servers, asneeded, with avatar commands, controls and/or communications specifiedby the user/resident.

It should also be appreciated that client 120 will have appropriatecontrols and communications facilities (which are not generallyhardware-dependent but can use available hardware interfaces such as akeyboard, mouse, camera, microphone or the like) collectively depictedat 225 of FIG. 2 which will preferably be resident on the clientprocessor. Client terminal 120 will also include a client configurationpanel 225 a which will maintain various settings in regard to how theclient terminal will respond to various inputs such as the sensitivityto mouse movements or particular definitions of actions for different,customized keystroke combinations.

In order to create islands, objects and avatars, some arrangement fordoing so, preferably a graphic user interface (GUI) which may be in theform of one or more screens (possibly nested) functioning as a console230 a-230 c may also be resident but are preferably downloaded fromvirtual universe server 115 through the local server for control of usethereof since fees may be charged for creation and addition of islands,objects and avatars to the VU. Such consoles allow particular attributes(e.g. locations, properties, personalities, graphics definitions and thelike) to be specified and which are thereafter stored, preferably on anassociated server 110 as depicted at 220 a, 220 b and 220 c for islands,objects and avatars, respectively, or VU server 115. Similar GUIs 240a-240 c are also provided (but preferably resident on the clientprocessor) for control of the current island, object and/or avatar, onceit has been created. Suitable arrangements for providing GUIs orconsoles 230 a-230 c and GUIs 240 are known and others providingenhanced user/resident convenience are foreseeable. The current island(220 a) with its associated objects (220 b) correspond to the currentlocation of the current avatar (220 c) and are thus the object ofteleportation or relocation invitations to which the present inventionis directed as will now be discussed.

Some definitions which will be helpful in the following discussion are:

1. Avatar—an avatar is a graphical representation the user/residentselects that others can see, often taking the form of a cartoon-likehuman but which can be produced with any degree of detail, whetherrealistic or fanciful;

2. Agent—an agent is the user's account, upon which the user/residentcan build an avatar and which is tied to an inventory of assets the usercreates and/or owns;

3. Region—a region is a virtual area of land (e.g. a portion of anisland or an environment associated therewith, such as an interior spacein a building) within the virtual universe which typically resides on asingle server;

4. Landmarks—a landmark is a map location that can be saved by a user(much in the manner of a “bookmark” in the Internet) and typicallycomprises a name and a map coordinate within the VU;

5. Friend/contact—a friend or Contact is another user/resident of the VUwhich is maintained in one or more lists which allows a user to see whenfriends or prior contacts are online and provides a mechanism forcontacting them directly using tools available with die list. It shouldalso be appreciated that assets, avatars, the environment correspondingto a location and anything else visible in the virtual environmentcomprises universal unique identifiers (UUIDs) tied to geometric data(preferably distributed to users as textual coordinates), textures(preferably distributed to users as graphics files such as JPEG 2000files) and effects data (preferably rendered by the user's clientprocessor according to the user's preferences and user's devicecapabilities but could be otherwise rendered as discussed above).

Virtual universes may be traversed by such methods as walking, flying orteleporting. Generally, walking and flying provide for traversal ofareas within an island while teleporting provides a mechanism to travelrapidly from one VU location to another VU location even if thelocations are geographically (e.g. in the context of the topology of aparticular VU) far apart such as on different islands or even indifferent virtual universes. As indicated above, a user can teleport anassociated avatar to any other location of which he may be aware.However, since a major feature of virtual universes is to allow avatarsof different users to interact as well as to increase user awareness ofadditional locations that may be of interest, one user may issue aninvitation to another user in the form of an offer of teleporting anavatar of the recipient from the current location of the recipient'savatar to another location. Known systems allow a recipient to accept orreject the invitation/offer of teleporting. If accepted, the avatar ofthe recipient is teleported from its current location to a locationcorresponding to the invitation/offer. Accordingly, a teleportationoperation will generally require rendering to be performed at adifferent location or redistributed among processors depending on theincremental change in processing load the teleport operation represents.

As alluded to above, the teleporting operation must be completed in anacceptably short time to avoid compromising the quality of the VUexperience for a user. However, a teleport operation involves at leastperforming a new rendering of the avatar in the new environment of theteleport destination as well as bookmarking/landmarking the avatar'soriginal location to facilitate return, transferring metadata of theavatar and associated objects traveling with the avatar and metadata ofthe destination environment and object therein between servers dependingon current processor load, exchange and processing of authorization andauthentication security data and the like, routing of the rendered imageor portions thereof to the client processor and associated imagegeneration; all of which are processing intensive operations and mayinvolve transmission of a substantial volume of data in addition to thesubstantial amount of processing required to manage the presence andinteractions of many avatars and objects distributed through the manyregions of a virtual universe as well as the burden of continualcreation of islands, objects and avatars as a VU evolves.

Nevertheless, the volume and frequency of teleport requests andinvitations is generally high in a VU because, at the present state ofthe art, teleporting to a destination is the only mechanism generallyprovided for viewing or experiencing in any way the environment of ateleport destination (although an arrangement for providing a singleimage of an entry point of a destination across which a user canvisually pan but without teleportation to support any avatar movement orinteraction with the destination is disclosed in U.S. Pat. No. 7,269,632to Edeker et al.) while there are many reasons a teleport destinationmay not be found acceptable or desirable to an avatar and associatedresident. For example, the environment of a destination or the types ofactivities to be found there may be contrary to a resident'sexpectations or preferences, the destination may be excessively crowded(which is also a factor in VU system management since crowding increasesthe burden of rendering a new environment including all avatars that maybe currently present), particular avatars or characteristics orbehaviors of avatars which may be present at a destination (e.g.so-called griefers which are avatars that principally behave in adisruptive manner), dangers to the avatar presented by the destinationand the like. Thus, teleportation to a destination is often followedrapidly by a return teleportation when the destination is found, as isoften the case, to be unsuitable. Such full teleportation (e.g. asprovided by known systems requiring the above processing andcommunications) “round trips” are particularly burdensome to the VUsystem and cause delays or even compromise the integrity and capabilityof the system to function acceptably or at all.

While teleportation requests may be relatively great in number asavatars explore the ever-changing extent of a VU, some presences in theVU may be provided or owned for business reasons where the owner wishesas many avatars as possible to experience the region which, as alludedto above, may represent and largely emulate a real-world facility. Suchregions are, for that reason, to be more highly detailed and present aparticularly large rendering burden with long response time. For thatreason, users may be reluctant to accept teleportation invitations tosuch locations. The same is true to some degree for any teleportationdestination in a VU; tending to discourage many teleportation operationsand compromise the VU experience for users.

The invention addresses this problem by exploiting the fact that theprincipal processing burden of full teleportation is the renderingprocess; the complexity of which is largely a function of the resolutionof the image to be rendered. Further, the resolution of an image,particularly when generated digitally and/or capable of portrayingmotion, is affected by the resolution or difference between image valuesof every perceptible image quality and is not limited to spatialresolution. For example, in addition to spatial resolution in theoptical sense (e.g. the number of pixels or patches of the image whichare generated and presented), an image will exhibit a color resolution(e.g. the number of distinct colors which may be included in an image).Similarly, synthesized images will also exhibit a fidelity resolutionsince surfaces having simple or compound curvatures are generallyapproximated with polygons and more or fewer polygons may be used toform such an approximation. Synthesized images also generally includeobject/light interactions between surfaces such as reflections, shadows,textures and transparency and/or translucency effects and the like(combinations of such effects sometimes being referred to as modelingdue to similarity to lighting effects in photography, although the term“modeling” more commonly refers, in computer graphics, to thedevelopment of a desired shape from so-called “primitive” shapes and assuch may be considered distinct from the rendering process) which aregenerally best rendered using computationally intensive ray-tracingtechniques but may be rendered with any selected degree of fidelity toanalogous real-world objects and light sources. Image sequencesportraying motion will exhibit a temporal fidelity in regard to framerate which affects the perceived smoothness of motion depicted bydifferences or blurring between successive images in the sequence.Reduction of resolution or fidelity of any of these image qualities maybe perceptible to a greater or lesser degree but may not degrade theperceived image to an objectionable degree while potentially greatlyreducing the processing and communication requirements for rendering adegraded image. Slight degradation of each of several of such imagequalities may also have a substantial impact on processing andcommunication burdens while causing little or no image degradation thatis perceptible by an average user. Moreover, degradation of some aspectsof an image may serve to mask degradation of other aspects of theperceived image. For example, degradation of spatial resolution maycause some aliasing or blurring of individual images which may serve tomask some degree of image “jerkiness” which will occur with reduction inframe rate below the so-called flicker fusion frequency of human visionor mask a degree of color depth degradation where reduced numbers ofcolors (sometimes referred to as color gamut while representing anequally large color space) may cause aliasing in a depiction of asurface where color varies across the surface. Additionally, somedegradation of resolution in regard to many of these image qualities mayoften be masked by interpolation which is well-understood and may beperformed autonomously and independently of other image manipulations bysimple techniques which are well understood in the display arts.

Moreover, some operational delays may be wholly or partially masked byreduction of some of these aspects of resolution or fidelity. Forexample, if rendering lime can be reduced to a short time approaching adegraded but acceptable frame rate, the rendering time will appear to besubstantially instantaneous. Further, if full resolution in regard toany or all aspects of images can be restored on demand or by degrees,degraded image rendering need not have a particularly extended durationbefore full resolution rendering is utilized; allowing the fullresolution rendering to be deferred until after all metadata transfersand image data routing and the like have been completed, thus reducingthe immediate impact of processing burden of a teleport operation.Conversely, degraded rendering could be used to reduce processing loadsand increase operational margins of the VU system where required withoutnecessarily shifting image processing between processors in a loadresponsive manner but where changes in load are much less abrupt;tending to reduce communications burdens to accommodate transientchanges in processing loads. In short, control of degradation of variousimage qualities may be managed through facilities provided by and inaccordance with principles of operation of the invention in such a wayas to greatly reduce processing and communications requirements ofteleportation operation and thus greatly improve response time whilemaintaining, in most instances, image presentation quality which isacceptable to an individual user and with little or no visuallyperceptible image quality reduction. Further, since teleportation isactually performed in accordance with the invention, full interaction ofan avatar with the destination environment and objects and avatarstherein is fully supported. Thus teleportation operations are encouragedin accordance with the control over the trade-off between response timeand image resolution and the overall VU experience enhanced.

Referring now to FIG. 3, an exemplary architecture 300 for allowingreduction of processing burdens of teleportation is illustrated. It isto be understood that this architecture is exemplary and many otherarrangements will be evident to those skilled in the art in view of thefollowing discussion. Moreover, it is to be understood that thearchitecture depicted or similar architectures supporting similarfunctions is preferably implemented in software to assure and enhanceinteroperability with existing VU infrastructure which is also largelyimplemented in software. Further, it should be appreciated that theillustration of FIG. 3 can also be understood as a data flow diagramwhich can be followed in connection with the following discussion of theoperation of a preferred implementation and methodology of theinvention.

In essence, the present invention allows the resolution of the renderingto be specified from the client processor 120 to allow the user fullcontrol of the trade-off between image quality and response time of theVU during actual teleport operations or visits to a teleport destinationas illustrated at a high level in FIG. 2 and greater detail in FIG. 3.It will be recalled from the foregoing that a client terminal 120 willinclude a client configuration panel 225 a which is used to capture andstore various user preferences in regard to the client processor, ingeneral, and the responses to particular user inputs from input 305which may be customized by the user. The client configuration panel 225a will preferably have an graphic user interface (GUI) 310 forindicating user preferences to be input and to facilitate capturing suchinput as it is specified by a user. For purposes of the invention, it ispreferred that such user preferences be directed to settings for levelsof resolution and fidelity of degraded images presented to the user. Theimage degradation parameters specified by a user may include (withoutlimitation) spatial resolution, frame rate, number of colors or colordepth (e.g. number of bits specifying color), reduced number of polygonsused to approximate surfaces, omission or limitation of effects ofshadows, light sources, reflections, transparency, textures and thelike, reduction of the scene area included in the rendering, degree ofdetail, style of rendering (e.g. so-called wireframe or outline of anobject or, in the alternative, substitution of labels or legends withoutgraphic rendering for some or all objects) and the like. It iscontemplated that such parameters may be set to indicate the lowestlevels of resolution and fidelity acceptable to the user and/orparticular levels of resolution and fidelity which, in combination,optimize the perceived image for a given degree of resolution andfidelity which corresponds to a given fractional reduction in processingburden for teleportation.

This fractional reduction may, in turn, correspond to a particularoperating margin of processing load on the VU system which is availableas an alternative to transferring processing between networkedprocessors as processing loads increase. Once such data is captured andstored in the client configuration panel 225 a, it is available tosupport normal operations of the invention and to enhance flexibility ofoperations of the VU system infrastructure. It is also preferred toprovide for capture and storage of a time or duration over which ateleport operation initially performed at reduced resolution will beconverted to full resolution. In this connection, it should be notedthat the principal processing burden of rendering (at a specifiedresolution) is presented when the initial rendering is performed.Subsequent renderings at increased resolution, while requiring increasedprocessing time, can be expedited and represent somewhat reducedprocessing loads since some of the information from lower resolutionrenderings can be used and resolution progressively refined as higherresolution renderings are produced. In any event, it is generallydesirable that full resolution renderings corresponding to fullteleportation by known VU systems be adopted at some point in time sinceprocessing consistency over the VU system can be approached. However,for some environments, reduced resolution may be entirely adequate and,if maintained, can limit communications burdens in the network. Further,it may be desirable to defer any increase in resolution until after aparticular amount of time has elapsed without a return teleportoperation, since the necessary additional processing for increasedresolution would be wasted if the user determined that the destinationwas unsuitable. Thus, providing the user with the option to specify whenor if resolution is increased after a low resolution teleport, ineffect, allows a user to maximize acceptability of overall VU systemperformance at their corresponding client terminal.

Specifically, in known VU systems the user may request teleportation ofthe current corresponding avatar to any location of which the user maybe aware by appropriate user input from 305. The user may also accept orreject a teleportation invitation received from any other user or agent.Both of these functions are supported by known VU systems. However, inaccordance with the present invention, the teleport operation is notimmediately executed by an arrangement or programming collectivelyindicated by teleport request control 320 but, instead, the teleportrequest control 320 initiates display of a user interface preferably inthe form of a dialog box or menu 330 for display to a user on display350. An exemplary image for the dialog box or menu is illustrated inFIG. 4. Basically, as illustrated in FIG. 4, the dialog box will confirmthat a teleportation request has been made and indicate the destinationspecified in the request. As a perfecting feature of the invention whichis not necessary to its practice in accordance with its most basicprinciples, teleport request control 320 can send an inquiry overnetwork 105 in regard to processing loads in the VU system in connectionwith the requested destination and can provide an estimate of the timerequired for full teleportation (e.g. at full resolution as would beprovided by known VU systems and this estimate displayed to the user.Further, the data discussed above in regard to acceptable levels ofresolution and fidelity are available to the dialog box or menugenerator 330 from client configuration panel 225 a and can be displayedto the user in connection with the confirmation of the teleportoperation request. Finally, with at least the above informationpresented to the user, the user is presented with the options ofaccepting full teleportation at full resolution (if available, asalluded to above and discussed in greater detail below), acceptingteleportation at reduced resolution (or a choice of several differentresolutions and estimated processing times), the option of editing thedisplay resolution parameters (in which case, the estimated renderingtime can initially indicate the estimated rendering time with theparameters set in the client configuration panel and which can bechanged as parameters are edited to indicate the effect on renderingtime) and the option of canceling the teleport operation altogether (asmight be desired if estimated processing time at full or reducedresolution was considered to be excessive).

Additionally, at the time of the teleport request, teleport requestcontrol 320 sends an inquiry over the network 105 in order to captureand retrieve an existing rendering (e.g. a rendering done in connectionwith a previous or current avatar visit to the destination, if availableand not outdated) or a short sequence thereof which may be cached atstorage or rendering engine 340 and which can be played out on a displayto the user while the teleportation operation is in process and beforethe initial rendering incident to a teleport operation is complete andpreferably during the period while the teleport request control 320 isawaiting a response from the user to dialog box/menu 330 to provide apreview at the reduced resolution such that the user could determine ifthe resolution previously set was sufficient for a preview of thedestination as well as allowing a user to see an image of thedestination for an initial determination of whether or not thedestination is suitable. Since the reduced resolution specifications inthe client configuration control 225 a are preferably made available tothe teleport request control 320, the previously set resolution can berequested in the query to capture a rendering of the destination and therendering can be returned at that resolution, reducing communicationtime for return of the rendering while providing a sample of the imagewhich is indicative of the quality of the graphics, when rendered. Ifthis optional facility is provided in an embodiment of the invention, itis also preferred to allow the user to modify the resolutionspecifications previously set such that the modified resolutionspecifications can be used for the teleport.

If the user wishes to proceed with the teleport either at fullresolution or at a reduced resolution determined by confirmation of theresolution parameters set in the client configuration panel 225 a, withor without editing, such action can be selected from the dialog box ormenu such as that of FIG. 4 and the destination will be rendered at aresolution in accordance with the selection made. Alternatively, insteadof directly rendering the destination at degraded resolution, it may bepreferable in some circumstances to generate a degraded version or copy360 of the destination and to initially teleport the avatar to thedegraded copy destination. This alternative would be preferable andprovide high levels of VU system performance and system efficiency, forexample, for destinations which may prove popular and/or normally have ahigh population of avatars present therein or for other reasons have ahigh estimated rendering time unless the rendering is highly degraded(e.g. to the point of wire-frame renderings of the environment withomissions of a number of environment features and objects such as plantsand decorative features and/or providing only labels or legends withoutrendering to represent avatars or any other level of image degradationthat was observed to be popular for initial teleports to a particulardestination). In other words, the degraded copy of a destination wouldbe much simplified as compared with the original destination and couldbe rendered directly with a short response time rather than the originaldestination being rendered at an altered resolution. In such a case,there would be a high likelihood that a user would find a highlydegraded image acceptable in order to view and experience thedestination if higher resolution was unavailable or rendering would takean excessive amount of time. In such an alternative embodiment of theinvention, the avatar would be teleported to the original,full-resolution destination after a designated time, on request, or whenadequate rendering resources were available for full resolutionrendering. In this regard, the “proceed at available resolution” optionin the dialog box or menu of FIG. 4 could have alternative functionswhich may be altered in response to the rendering time estimate ascompared to a maximum acceptable delay entered with other renderingparameters in client configuration panel 225 a. That is, if therendering time at full resolution or maximum resolution that can beprovided under current processing load conditions was less than theselected maximum acceptable time the teleport operation would be to theoriginal destination but, if more than the selected maximum acceptabletime, the teleport operation would cause initial teleportation to thedegraded version or copy of the destination and transfer to the originaldestination thereafter in due course.

Thus, to summarize, the user may set resolution specifications thoughtto be sufficient in the client configuration panel such that suchspecifications can be used as a default in order to simplify andexpedite use of the interface provided by the dialog box/menu 330. Thesespecifications can be modified at will and corresponding estimatedresponse times can, optionally, be provided to the user, consistent withmaintaining the possibility of choosing full resolution teleportoperation provided by known systems. The user is thus provided withcomplete control over the trade-off between response lime for teleportoperations and image quality while allowing full resolution to beresumed during the avatar visit to the teleport destination unless thevisit is terminated prior to full resolution being permitted or wheredegraded images may be deemed sufficient for the entire visit.

From the standpoint of the VU system and its operation, the presentinvention also provides some operational advantages as alluded to above.It was noted in regard to the VU system as illustrated in FIG. 1 thatthe processing load is distributed among the client and serverprocessors which are connected by the network and processing in generaland rendering in particular may be shifted from one processor to anotheras processing and communication loads may require. However, the shift ofrendering from one processor to another requires the transfer ofmetadata from which the rendering is performed to be shifted betweenprocessors and thus represents additional processing in order to do so.As discussed above, a significant meritorious effect of the invention isto allow a user to reduce the processing load by specifying reducedresolution of rendering in order to reduce system response time which,when implemented generally would, for a given number of users, tend toreduce overall processing demands on the system. Conversely, it wasnoted above mat high processing loads may cause increases in responsetime beyond what would be considered as acceptable system performance.

While overall system performance will generally be improved through useof the present invention, during periods of high processing load,particular processors having high processing loads may query the clientprocessors corresponding to the avatars they are currently rendering todetermine if reduced resolution is acceptable and, if so, what degree ofresolution reduction has been specified. The processor can thentemporarily reduce rendering resolution (or delay increase of resolutionor conversion to full resolution) within the resolution reductionspecified corresponding to one or more avatars in order to maintainprocessing loads within limits and without requiring shifting ofprocessing load to other processors while assuring that any loss ofresolution will be within the resolution reduction specified to beacceptable by each user without incurring the processing andcommunication burden of shifting processing between processors. When itis considered that reductions in resolution can be spread over numerousimage parameters and that slight resolution reduction in any givenparameter may not be perceptible to a user, it can be appreciated thatthis meritorious effect of the invention can be highly effective inmaintaining operating margins of the VU system as a whole as well as inbalancing processing and communication loads.

In view of the foregoing, it is seen that the invention provides forreduction of high processing loads incident to teleportation in a VUsystem and thus may improve response time and facilitate teleportationoperations while allowing full interaction of an avatar with theenvironment at a teleportation destination. Moreover, the presentinvention provides some important operational advantages for the overallVU system while allowing a user full control over the trade-off betweenimage quality and system response time to assure acceptable systemperformance and optimization of the VU experience for each user.

While shown and described herein as a method and a system, it isunderstood that die invention further provides various alternativeembodiments. For example, in one embodiment shown in FIG. 5, theinvention provides a computer-readable/useable medium 22B that includescomputer program code to enable a computer infrastructure toautomatically manage teleportation movements between locations invirtual environments while determining suitability of requesteddestinations. To tins extent, the computer-readable/useable mediumincludes program code that implements each of the various process stepsof the invention.

It is understood that the terms computer-readable medium or computeruseable medium comprise one or more of any type of physical embodimentof the program code. In particular, the computer-readable/useable mediumcan comprise program code embodied on one or more portable storagearticles of manufacture (e.g., a compact disc, a magnetic disk, a tape,etc., collectively depicted at 32), or on one or more data storageportions of a computing device, such as the memory 22A and/or thestorage system 22B (e.g., a fixed disk, a read-only memory, a randomaccess memory, a cache memory, etc.), and/or as a data signal 34 (e.g.,a propagated signal) traveling over a network 105 as depicted in FIG. 1(e.g., during a wired/wireless electronic distribution of the programcode).

Still yet, computer infrastructure 10 is intended to demonstrate thatsome or all of the components of implementation could be deployed,managed, serviced, etc. by a service provider who offers to implement,deploy, and/or perform the functions of the present invention forautomatically managing teleportation movements between locations invirtual environments while determining suitability of requesteddestinations, for example by licensing methods and browser orapplication server technology according to the present invention to aninternet service providers (ISP) or cellular telephone provider. In oneembodiment the invention may comprise a business method that performsthe process steps of the invention on a subscription, advertising,and/or fee basis. Thus a service provider can create, maintain, support,etc., a computer infrastructure 12 including computing device 14, suchas the computer infrastructure 10 that performs the process steps of theinvention for automatically manage teleportation movements betweenlocations in virtual environments while determining suitability ofrequested destinations, and in return the service provider can receivepayment from the customers) under a subscription and/or fee agreementand/or the service provider can receive payment from the sale ofadvertising content to one or more third parties.

As used herein, it is understood that the terms “program code” and“computer program code” are synonymous and mean any expression, in anylanguage, code or notation, of an application 30 comprising a set ofinstructions including program control 44 intended to cause a computingdevice 20 having an information processing capability to perform aparticular function either directly or after either or both of thefollowing: (a) conversion to another language, code or notation; and/or(b) reproduction in a different material form. To this extent, programcode can be embodied as one or more of: an application/software program,component software/a library of functions, an operating system, a basicI/O system/driver 24 for a particular computing and/or I/O device 28,and the like.

The foregoing description of various aspects of the invention has beenpresented for purposes of illustration and description, it is notintended to be exhaustive or to limit the invention to the precise formdisclosed, and obviously, many modifications and variations arepossible. Such modifications and variations that may be apparent to aperson skilled in the art are intended to be included within the scopeof the invention as defined by the accompanying claims.

While the invention has been described in terms of a single preferredembodiment, those skilled in the art will recognize that the inventioncan be practiced with modification within the spirit and scope of theappended claims.

What is claimed is:
 1. A method for improving response time of ateleportation operation in a virtual universe system, said methodcomprising: storing image resolution parameters at a client processorcorresponding to an avatar of said virtual universe; in response to ateleport operation request to a teleportation destination for saidavatar, providing an interface to a user to change said image resolutionparameters or to confirm that said image resolution parameters areacceptable to a user for rendering an image of said avatar and saidteleportation destination; rendering an image of said avatar and saidteleportation destination in the course of said teleportation operationin accordance with resolution parameters determined in said changing orconfirming operations of said step of providing an interface, andrendering an image of said avatar an said teleportation destination atfull resolution wherein said rendering an image at full resolution isperformed a predetermined time subsequent to said step of rendering inaccordance with said resolution parameters determined in said confirmingor changing operations.
 2. The method as recited in claim 1, whereinsaid resolution parameters are set in a client configuration panel of aclient processor.
 3. The method as recited in claim 1, further includingreducing resolution of said step of rendering at full resolution withinsaid rendering parameters determined in said confirming or changingoperations in response to processing load at a processor performing saidrendering step.
 4. A method for improving response time of ateleportation operation in a virtual universe system, said methodcomprising: storing image resolution parameters at a client processorcorresponding to an avatar of said virtual universe; in response to ateleport operation request to a teleportation destination for saidavatar, providing an interface to a user to change said image resolutionparameters or to confirm that said image resolution parameters areacceptable to a user for rendering an image of said avatar and saidteleportation destination; providing a degraded copy of a teleportationdestination, wherein the teleport operation provides initialteleportation to said degraded copy of a teleportation destination, andrendering an image of said avatar and said teleportation destination inthe course of said teleportation operation in accordance with resolutionparameters determined in said changing or confirming operations of saidstep of providing an interface.
 5. The method as recited in claim 4,wherein said resolution parameters are set in a client configurationpanel of a client processor.
 6. The method as recited in claim 4,further including reducing resolution of said step of rendering at fullresolution within said rendering parameters determined in saidconfirming or changing operations in response to processing load at aprocessor performing said rendering step.